On the relationship between variability in multitasking performance and cortical projections to the caudate and the putamen



Relating variability in multitasking behaviour to cortical projections to the caudate and the putamen

Having previously identified latent circuits entailing a set of cortical nodes (IFG, SFG, SMA, IPG) and their white matter projections to the caudate and the putamen respectively see here, I will now examine how individual scores on the factors reflecting these circuits predict variability in performance on a multitasking paradigm. Details of the data collection can be found here.

Data details


For each subject, session and multi-task condition (single [s], multi-task first response [FM], multi-task second response [SM]), I calculated the co-efficient of variability [CV] as:

$CV = \frac{Q75-Q25}{Q50}$

where Q = quantile.

I am also taking each participants’ scores for the two factor solution identified here

# Load packages, source function files and define path variables
library(tidyverse)
library(cowplot)
library(interactions)
library(wesanderson)
source("../R_rainclouds.R")
source("../KG_data-wrangling.R")
tract_data = '../dti-data/KG_2factSol_subdata.csv'
fpath <- paste(getwd(), 'cleaned-data', sep='/')# path for attaining behavioural [CV] data 
# get the behavioural data
CV.dat <- read.csv("../cleaned-data/CV-all-subs.csv")
CV.dat$group <- NA
CV.dat$group[CV.dat$sub < 200] = "practice"
CV.dat$group[CV.dat$sub > 199] = "control"
CV.dat$group <- factor(CV.dat$group, levels=c("practice", "control"))
CV.dat$cog_cond <- c("s", "FM", "SM")
CV.dat$cog_cond <- factor(CV.dat$cog_cond, levels=c("s", "FM", "SM"))
CV.dat <- CV.dat %>% select(-mult_cond)
CV.dat$sub <- as.factor(CV.dat$sub)
CV.dat$sess <- factor(CV.dat$sess, levels=c("Pre", "Post"))

learn.dat <- rbind( read.csv( "../cleaned-data/practiceGrp-pwr-coeffs.csv"),
                    read.csv( "../cleaned-data/controlGrp-pwr-coeffs.csv")) %>%
                    select(-c(model, RMSE, int, slp))
learn.dat$cog_cond <- c("s", "FM", "SM")
learn.dat$cog_cond <- factor(learn.dat$cog_cond, levels=c("s", "FM", "SM"))
learn.dat <- learn.dat %>% select(-cond)
learn.dat$sub <- as.factor(learn.dat$sub)

all.dat <- inner_join(CV.dat, learn.dat, by=c("sub", "cog_cond"))
all.dat$sub <- as.factor(all.dat$sub)

# get the tract data
tract.dat <- read.csv(tract_data) %>% select(-X) 
tract.dat$sub <- as.factor(tract.dat$sub)
reg.dat <- inner_join(all.dat, tract.dat, by=c('sub')) %>%
              unique() %>% na.omit
reg.dat$sub <- as.factor(reg.dat$sub)

# Show it:
reg.dat %>% head(5)



Data Check


First I just check that the variables of interest (regressors, CV data and median RT) are not horribly skewed.

draw.qq <- function(x){
    ggplot(reg.dat, aes(sample=eval(parse(text = x)), colour=cog_cond)) +
          stat_qq() + stat_qq_line() + scale_color_manual(values=wes_palette("IsleofDogs1")[c(1,2,4)]) +
          facet_wrap(~sess*cog_cond) + ggtitle(x)
  }

draw.qq("CV")
Showing QQ Plot for CV by condition and by session

Showing QQ Plot for CV by condition and by session


draw.qq("RT")
Showing QQ Plot for RT by condition and by session

Showing QQ Plot for RT by condition and by session


draw.qq("cort_to_CN")
Showing QQ Plot for scores on the cortical to caudate factor

Showing QQ Plot for scores on the cortical to caudate factor


draw.qq("cort_to_Put")
Showing QQ Plot for scores on the cortical to caudate factor

Showing QQ Plot for scores on the cortical to caudate factor



Examining the relationship between CV and factor scores


We seek to understand whether our scores on the tract factors (cortical to caudate [cort_to_CN] and cortical to putamen [cort_to_Put]) predict an individuals variability in performance on single task trials, on the first performed task of multitask trials, and on the second performed task of multitask trials. We take each of these DVs in turn, and fit a GLM, with the two factor score regressors, as well as group and session factors, while controlling for the relationship between median RT and CV.

# first fit the models
CV.mds <- lapply(unique(reg.dat$cog_cond), function(x) glm(CV ~ cort_to_CN*cort_to_Put*group*sess+RT, data=reg.dat[reg.dat$cog_cond == x,]))


Single task CV


For single task CV, we only find a statistically significant relationship between median RT and CV.


summary(CV.mds[[1]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN * cort_to_Put * group * sess + 
##     RT, data = reg.dat[reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -26.763   -7.146   -1.596    4.832   51.949  
## 
## Coefficients:
##                                              Estimate Std. Error t value
## (Intercept)                                  -2.85946    6.20723  -0.461
## cort_to_CN                                    2.60237    2.47169   1.053
## cort_to_Put                                  -1.78175    2.19246  -0.813
## groupcontrol                                  1.97090    2.82832   0.697
## sessPost                                      2.68925    3.39138   0.793
## RT                                           46.35284    7.09821   6.530
## cort_to_CN:cort_to_Put                       -1.70553    2.96555  -0.575
## cort_to_CN:groupcontrol                      -4.84699    3.09554  -1.566
## cort_to_Put:groupcontrol                     -0.04135    3.06785  -0.013
## cort_to_CN:sessPost                          -1.77429    3.49435  -0.508
## cort_to_Put:sessPost                         -0.28041    3.09732  -0.091
## groupcontrol:sessPost                        -0.72544    4.13636  -0.175
## cort_to_CN:cort_to_Put:groupcontrol           1.19009    3.53316   0.337
## cort_to_CN:cort_to_Put:sessPost               2.13063    4.15848   0.512
## cort_to_CN:groupcontrol:sessPost              6.99553    4.37584   1.599
## cort_to_Put:groupcontrol:sessPost             5.77054    4.33183   1.332
## cort_to_CN:cort_to_Put:groupcontrol:sessPost -0.92058    4.97482  -0.185
##                                              Pr(>|t|)    
## (Intercept)                                     0.646    
## cort_to_CN                                      0.294    
## cort_to_Put                                     0.418    
## groupcontrol                                    0.487    
## sessPost                                        0.429    
## RT                                           1.32e-09 ***
## cort_to_CN:cort_to_Put                          0.566    
## cort_to_CN:groupcontrol                         0.120    
## cort_to_Put:groupcontrol                        0.989    
## cort_to_CN:sessPost                             0.612    
## cort_to_Put:sessPost                            0.928    
## groupcontrol:sessPost                           0.861    
## cort_to_CN:cort_to_Put:groupcontrol             0.737    
## cort_to_CN:cort_to_Put:sessPost                 0.609    
## cort_to_CN:groupcontrol:sessPost                0.112    
## cort_to_Put:groupcontrol:sessPost               0.185    
## cort_to_CN:cort_to_Put:groupcontrol:sessPost    0.853    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 142.0931)
## 
##     Null deviance: 29661  on 147  degrees of freedom
## Residual deviance: 18614  on 131  degrees of freedom
## AIC: 1171.5
## 
## Number of Fisher Scoring iterations: 2



First multi-task performed


For the first multi-task performed [FM], we find a significant cort_to_CN x group x session interaction.

summary(CV.mds[[2]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN * cort_to_Put * group * sess + 
##     RT, data = reg.dat[reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -27.777   -5.478   -0.673    5.431   33.566  
## 
## Coefficients:
##                                              Estimate Std. Error t value
## (Intercept)                                   20.1274     4.9372   4.077
## cort_to_CN                                    -5.7986     2.2223  -2.609
## cort_to_Put                                   -1.1565     1.9708  -0.587
## groupcontrol                                   0.4407     2.6446   0.167
## sessPost                                      -0.9136     3.2186  -0.284
## RT                                            10.5104     3.8052   2.762
## cort_to_CN:cort_to_Put                         4.4267     2.6868   1.648
## cort_to_CN:groupcontrol                        5.2706     2.7843   1.893
## cort_to_Put:groupcontrol                       2.1080     2.7665   0.762
## cort_to_CN:sessPost                            8.2780     3.1476   2.630
## cort_to_Put:sessPost                           2.3575     2.7802   0.848
## groupcontrol:sessPost                          1.0692     3.8057   0.281
## cort_to_CN:cort_to_Put:groupcontrol           -2.8897     3.1944  -0.905
## cort_to_CN:cort_to_Put:sessPost               -7.8232     3.7492  -2.087
## cort_to_CN:groupcontrol:sessPost              -8.6860     3.9311  -2.210
## cort_to_Put:groupcontrol:sessPost             -3.1549     3.8887  -0.811
## cort_to_CN:cort_to_Put:groupcontrol:sessPost   6.8872     4.4914   1.533
##                                              Pr(>|t|)    
## (Intercept)                                  7.88e-05 ***
## cort_to_CN                                    0.01013 *  
## cort_to_Put                                   0.55833    
## groupcontrol                                  0.86790    
## sessPost                                      0.77698    
## RT                                            0.00657 ** 
## cort_to_CN:cort_to_Put                        0.10184    
## cort_to_CN:groupcontrol                       0.06057 .  
## cort_to_Put:groupcontrol                      0.44744    
## cort_to_CN:sessPost                           0.00956 ** 
## cort_to_Put:sessPost                          0.39801    
## groupcontrol:sessPost                         0.77920    
## cort_to_CN:cort_to_Put:groupcontrol           0.36733    
## cort_to_CN:cort_to_Put:sessPost               0.03886 *  
## cort_to_CN:groupcontrol:sessPost              0.02887 *  
## cort_to_Put:groupcontrol:sessPost             0.41867    
## cort_to_CN:cort_to_Put:groupcontrol:sessPost  0.12758    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 114.5059)
## 
##     Null deviance: 18293  on 147  degrees of freedom
## Residual deviance: 15000  on 131  degrees of freedom
## AIC: 1139.6
## 
## Number of Fisher Scoring iterations: 2


To further understand this interaction, we first plot the cort_to_CN x session interaction by group.

interact_plot(CV.mds[[2]], pred=cort_to_CN, modx=sess, mod2=group, plot.points=TRUE, interval=TRUE,
              colors = wes_palette("IsleofDogs1")[c(1,4)])
cort_to_CN x session interaction by group

cort_to_CN x session interaction by group


We can see from the figure above (and corroborate with post hoc tests) that the relationship between cort_to_CN and CV is statistically significant for the practice group at the pre-training session, but not at post-training. For pre-training, as FA in this circuit increases, variability in performance decreases. For the control group, this relationship is not significant. Therefore, the results appear to be due to a difference in the groups that occurred at the pre-training session.



Investigating strategy differences between practice and control groups at the pre-training session



We know from previous research that the multitask trials can be completed using at least two strategies. 1) a serial processing strategy where task 1 is completed first, and task 2 is engaged subsequently. In this case you would expect the duration difference between s and FM trials to be small, whereas the difference between FM and SM should be larger (as the cost has been loaded onto SM performance). In contrast, the decision-stages of both FM and SM can be completed prior to execution of both responses (response grouping). In this instance, you would expect the difference between s and FM to be large, and the difference between FM and SM to be small.


It could be that the observed pre-training difference in the relationship between cort_to_CN and CV is moderated by the strategy participants used in the pre-training session.


To test this, I first sought to quantify strategy differences between the groups. For each participant, I calculated FM − s and SM − FM. If there is group level differences in the strategy utilised, we should see a difference in these measures.


RT.diff.dat <- reg.dat %>% group_by(sub, group, sess) %>%
                           summarise(s2FM = RT[cog_cond == "FM"]-RT[cog_cond == "s"],
                                     FM2SM = RT[cog_cond == "SM"]-RT[cog_cond == "FM"])

RT.diff.dat %>% ggplot(aes(x=group, y=s2FM, fill=group)) +
                           geom_boxplot(outlier.colour="black", notch=TRUE) + facet_wrap(~sess) +
                           ylab("FM - s") + 
                           scale_fill_manual(values=wes_palette("IsleofDogs1")[c(1,4)]) 
RT.diff.dat %>% ggplot(aes(x=group, y=FM2SM, fill=group)) +
                           geom_boxplot(outlier.colour="black", notch=TRUE) + facet_wrap(~sess) +
                           ylab("SM - FM") + 
                           scale_fill_manual(values=wes_palette("IsleofDogs1")[c(1,4)]) 
## notch went outside hinges. Try setting notch=FALSE.
Showing FM-s and SM-FM for the practice and control groupsShowing FM-s and SM-FM for the practice and control groups

Showing FM-s and SM-FM for the practice and control groups


As can be seen, the groups are different in the strategy that they used pre-training, according to these metrics. We can test this difference to see if it is statistically significant (we can see it is from the notch plot, but to be formal we compare the groups at the pre-session using Welch’s t-tests, which you can see are both statistically significant…)


with(RT.diff.dat[RT.diff.dat$sess == "Pre", ], t.test(s2FM~group, paired=FALSE, var.equal = FALSE))
## 
##  Welch Two Sample t-test
## 
## data:  s2FM by group
## t = 3.424, df = 70.644, p-value = 0.001031
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  0.06725831 0.25486085
## sample estimates:
## mean in group practice  mean in group control 
##              0.3751793              0.2141197
with(RT.diff.dat[RT.diff.dat$sess == "Pre", ], t.test(FM2SM~group, paired=FALSE, var.equal = FALSE))
## 
##  Welch Two Sample t-test
## 
## data:  FM2SM by group
## t = -2.3289, df = 71.953, p-value = 0.02268
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -0.23170866 -0.01798204
## sample estimates:
## mean in group practice  mean in group control 
##              0.2216490              0.3464944


The above data indeed suggest that the two groups differed in their task strategy at the first session. Now we can test whether this strategy is what moderates the observed pre-training differences, by adding these variables (FM − s and SM − FM) as regressors to the glms that were previously applied to each group.



Does the duration between s and FM moderate the relationship between cort_to_CN and CV, observed for the practice group and not the control group?


To investigate this question we apply a cort_to_CN x s2FM x sess GLM to the practice group data, to see if s2FM interacts with cort_to_CN, to predict CV.


reg.dat <- inner_join(reg.dat, RT.diff.dat, by=c("sub", "sess", "group"))
# running SM now also, for recall later
s2FM.mod.p <- lapply(c("FM","SM"), function(x) glm(CV ~ cort_to_CN:s2FM:sess, data=reg.dat[reg.dat$group == "practice" & reg.dat$cog_cond == x,]))
summary(s2FM.mod.p[[1]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN:s2FM:sess, data = reg.dat[reg.dat$group == 
##     "practice" & reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -23.344   -7.796   -1.523    6.782   24.096  
## 
## Coefficients:
##                          Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                29.468      1.206  24.437  < 2e-16 ***
## cort_to_CN:s2FM:sessPre   -15.353      5.493  -2.795  0.00666 ** 
## cort_to_CN:s2FM:sessPost   -7.714     12.419  -0.621  0.53650    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 106.9162)
## 
##     Null deviance: 8468.3  on 73  degrees of freedom
## Residual deviance: 7591.1  on 71  degrees of freedom
## AIC: 560.67
## 
## Number of Fisher Scoring iterations: 2


We can now plot this interaction to see if FM − s does indeed moderate the relationship in the way we would expect. Specifically, we would expect participants who show a larger value for s2FM to show a stronger negative relationship between cort_to_CN and CV. This means that the higher the FA in the caudate based network, the lower the variability in your performance, when you are using a response-grouping strategy (i.e. when you are holding in mind your response to FM for a longer period of time).

interact_plot(s2FM.mod.p[[1]], pred=cort_to_CN, modx=sess, mod2=s2FM, plot.points=TRUE, interval=TRUE,
              colors = wes_palette("IsleofDogs1")[c(1,4)])
cort_to_CN x session interaction for the practice group, by s2FM value (mu-1SD, mu, mu+1SD)

cort_to_CN x session interaction for the practice group, by s2FM value (mu-1SD, mu, mu+1SD)

Given the controls did not show a statistically significant cort_to_CN x session interaction, we would not expect the FM − s variable to influence this non-significant relationship, which is what we see below.

s2FM.mod.c <- lapply(c("FM","SM"), function(x) glm(CV ~ cort_to_CN:s2FM:sess, data=reg.dat[reg.dat$group == "control" & reg.dat$cog_cond == x,]))
summary(s2FM.mod.c[[1]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN:s2FM:sess, data = reg.dat[reg.dat$group == 
##     "control" & reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -32.851   -8.159   -1.340    5.467   32.284  
## 
## Coefficients:
##                          Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                30.147      1.354  22.268   <2e-16 ***
## cort_to_CN:s2FM:sessPre    -9.450      6.162  -1.534    0.130    
## cort_to_CN:s2FM:sessPost   -7.395     10.229  -0.723    0.472    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 132.534)
## 
##     Null deviance: 9787.8  on 73  degrees of freedom
## Residual deviance: 9409.9  on 71  degrees of freedom
## AIC: 576.57
## 
## Number of Fisher Scoring iterations: 2


Although it was not statistically significant, we do visually observe the same trend, suggesting that this relationship is not unique to the practice group.

interact_plot(s2FM.mod.c[[1]], pred=cort_to_CN, modx=sess, mod2=s2FM, plot.points=TRUE, interval=TRUE,
              colors = wes_palette("IsleofDogs1")[c(1,4)])
cort_to_CN x session interaction for the control group, by s2FM value (mu-1SD, mu, mu+1SD)

cort_to_CN x session interaction for the control group, by s2FM value (mu-1SD, mu, mu+1SD)

The same test with the SM − FM variable did not yield a statistically significant interaction for either group.


FM2SM.mod.p <- lapply(c("FM","SM"), function(x) glm(CV ~ cort_to_CN:FM2SM:sess, data=reg.dat[reg.dat$group == "practice" & reg.dat$cog_cond == x,]))
summary(FM2SM.mod.p[[1]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN:FM2SM:sess, data = reg.dat[reg.dat$group == 
##     "practice" & reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -21.715   -6.944   -1.728    4.534   30.061  
## 
## Coefficients:
##                           Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                 29.593      1.267  23.354   <2e-16 ***
## cort_to_CN:FM2SM:sessPre    -6.499      7.081  -0.918    0.362    
## cort_to_CN:FM2SM:sessPost   11.781     14.018   0.840    0.403    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 116.7144)
## 
##     Null deviance: 8468.3  on 73  degrees of freedom
## Residual deviance: 8286.7  on 71  degrees of freedom
## AIC: 567.16
## 
## Number of Fisher Scoring iterations: 2
FM2SM.mod.c <- lapply(c("FM","SM"), function(x) glm(CV ~ cort_to_CN:FM2SM:sess, data=reg.dat[reg.dat$group == "control" & reg.dat$cog_cond == x,]))
summary(FM2SM.mod.c[[1]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN:FM2SM:sess, data = reg.dat[reg.dat$group == 
##     "control" & reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -29.384   -8.301   -1.038    6.213   32.677  
## 
## Coefficients:
##                           Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                 30.514      1.367  22.324   <2e-16 ***
## cort_to_CN:FM2SM:sessPre     2.116      4.192   0.505    0.615    
## cort_to_CN:FM2SM:sessPost   -1.353      4.689  -0.288    0.774    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 137.2004)
## 
##     Null deviance: 9787.8  on 73  degrees of freedom
## Residual deviance: 9741.2  on 71  degrees of freedom
## AIC: 579.13
## 
## Number of Fisher Scoring iterations: 2



Do the same associations apply for the multitask that was performed second [SM]?



We can now ask if we observe the same relationships for the second task performed on the multitask trials. First we run the same GLM, with the two factor score regressors, as well as group and session factors, while controlling for the relationship between median RT and CV, this time with SM as the DV.

Again, we see a signifiant cort_to_CN x group x session interaction.

summary(CV.mds[[3]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN * cort_to_Put * group * sess + 
##     RT, data = reg.dat[reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##      Min        1Q    Median        3Q       Max  
## -20.2331   -6.4460   -0.6883    4.9892   23.7269  
## 
## Coefficients:
##                                              Estimate Std. Error t value
## (Intercept)                                   25.3487     4.1963   6.041
## cort_to_CN                                    -5.0402     2.0278  -2.486
## cort_to_Put                                   -1.3851     1.8021  -0.769
## groupcontrol                                  -4.4360     2.3200  -1.912
## sessPost                                      -3.7031     2.8630  -1.293
## RT                                             4.4365     2.7088   1.638
## cort_to_CN:cort_to_Put                         4.5323     2.4312   1.864
## cort_to_CN:groupcontrol                        6.0183     2.5373   2.372
## cort_to_Put:groupcontrol                      -0.5344     2.5179  -0.212
## cort_to_CN:sessPost                            7.3684     2.8660   2.571
## cort_to_Put:sessPost                           3.8743     2.5390   1.526
## groupcontrol:sessPost                          4.6245     3.4331   1.347
## cort_to_CN:cort_to_Put:groupcontrol           -3.8057     2.8934  -1.315
## cort_to_CN:cort_to_Put:sessPost               -6.1620     3.4187  -1.802
## cort_to_CN:groupcontrol:sessPost              -7.7545     3.5885  -2.161
## cort_to_Put:groupcontrol:sessPost             -4.3687     3.5536  -1.229
## cort_to_CN:cort_to_Put:groupcontrol:sessPost   4.6225     4.0913   1.130
##                                              Pr(>|t|)    
## (Intercept)                                  1.49e-08 ***
## cort_to_CN                                     0.0142 *  
## cort_to_Put                                    0.4435    
## groupcontrol                                   0.0580 .  
## sessPost                                       0.1981    
## RT                                             0.1039    
## cort_to_CN:cort_to_Put                         0.0645 .  
## cort_to_CN:groupcontrol                        0.0192 *  
## cort_to_Put:groupcontrol                       0.8323    
## cort_to_CN:sessPost                            0.0113 *  
## cort_to_Put:sessPost                           0.1294    
## groupcontrol:sessPost                          0.1803    
## cort_to_CN:cort_to_Put:groupcontrol            0.1907    
## cort_to_CN:cort_to_Put:sessPost                0.0738 .  
## cort_to_CN:groupcontrol:sessPost               0.0325 *  
## cort_to_Put:groupcontrol:sessPost              0.2211    
## cort_to_CN:cort_to_Put:groupcontrol:sessPost   0.2606    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 95.57514)
## 
##     Null deviance: 15221  on 147  degrees of freedom
## Residual deviance: 12520  on 131  degrees of freedom
## AIC: 1112.8
## 
## Number of Fisher Scoring iterations: 2


A plot of the interaction reveals a comparable relationship as to what was observed for FM:


interact_plot(CV.mds[[3]], pred=cort_to_CN, modx=sess, mod2=group, plot.points=TRUE, interval=TRUE,
              colors = wes_palette("IsleofDogs1")[c(1,4)])
cort_to_CN x session interaction for the practice and control groups

cort_to_CN x session interaction for the practice and control groups


We run the same GLMs as above, containing s2FM as a regressor, to determine whether strategy moderates this interaction. This time the interaction is not statistically significant (p=.0577), but the plot of the interaction does follow the same visual pattern.


summary(s2FM.mod.p[[2]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN:s2FM:sess, data = reg.dat[reg.dat$group == 
##     "practice" & reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -24.299   -7.543   -2.926    6.421   27.216  
## 
## Coefficients:
##                          Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                28.273      1.268  22.289   <2e-16 ***
## cort_to_CN:s2FM:sessPre   -11.148      5.778  -1.930   0.0577 .  
## cort_to_CN:s2FM:sessPost   -3.928     13.063  -0.301   0.7645    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 118.2975)
## 
##     Null deviance: 8850.5  on 73  degrees of freedom
## Residual deviance: 8399.1  on 71  degrees of freedom
## AIC: 568.16
## 
## Number of Fisher Scoring iterations: 2
interact_plot(s2FM.mod.p[[2]], pred=cort_to_CN, modx=sess, mod2=s2FM, plot.points=TRUE, interval=TRUE,
              colors = wes_palette("IsleofDogs1")[c(1,4)])
SM ~ cort_to_CN x session interaction for the practice group, by s2FM value (mu-1SD, mu, mu+1SD)

SM ~ cort_to_CN x session interaction for the practice group, by s2FM value (mu-1SD, mu, mu+1SD)


We also find similar observations for the control group.


summary(s2FM.mod.c[[2]])
## 
## Call:
## glm(formula = CV ~ cort_to_CN:s2FM:sess, data = reg.dat[reg.dat$group == 
##     "control" & reg.dat$cog_cond == x, ])
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -27.843   -5.220   -1.278    5.199   25.588  
## 
## Coefficients:
##                          Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                26.497      1.097  24.155   <2e-16 ***
## cort_to_CN:s2FM:sessPre    -4.705      4.993  -0.942    0.349    
## cort_to_CN:s2FM:sessPost   -3.717      8.288  -0.448    0.655    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 87.01335)
## 
##     Null deviance: 6271.9  on 73  degrees of freedom
## Residual deviance: 6177.9  on 71  degrees of freedom
## AIC: 545.43
## 
## Number of Fisher Scoring iterations: 2
interact_plot(s2FM.mod.c[[2]], pred=cort_to_CN, modx=sess, mod2=s2FM, plot.points=TRUE, interval=TRUE,
              colors = wes_palette("IsleofDogs1")[c(1,4)])
SM~cort_to_CN x session interaction for the control group, by s2FM value (mu-1SD, mu, mu+1SD)

SM~cort_to_CN x session interaction for the control group, by s2FM value (mu-1SD, mu, mu+1SD)



Conclusion


Performance is more variable, particularly on multitask trials, with lower FA levels in the caudate-cortical network, however, this relationship is moderated by the extent to which a response grouping strategy is applied (relative to a serial strategy).



 




A work by Kelly Garner